package com.kandinfo.base.security.service;

import java.util.List;

import com.kandinfo.base.common.dto.widget.DataTablesResponseDto;
import com.kandinfo.base.security.domain.Role;
import com.kandinfo.base.security.dto.MenuDto;
import com.kandinfo.base.security.dto.RoleDto;
import com.kandinfo.base.security.dto.RoleSearchDto;

/**
 * 
 * Class Name: RoleService Description: RoleService
 * 
 * @author qianqiao
 *
 */
public interface RoleService {

    void delete(Long id);

    List<Role> findAll();

    List<Role> findRoleNotAdmin();
    Role findById(Long id);

    Role save(Role role);

    DataTablesResponseDto<RoleDto> searchByCon(final RoleSearchDto searchDto);

    List<MenuDto> findAllMenu();

    /**
     * 
     * Description: check name
     *
     * @param roleName
     * @param roleDesc
     * @return
     */
    List<Role> checkName(Long id, String roleName);
}
